#include"server.hpp"
// #define INFO 0 
// #define DEBUG 1
// #define ERROR 2
// #define DEFAULT_LEVEL 1

// #define LOG(level, format, ...) do { \
//     if (level < DEFAULT_LEVEL) break; \
//     time_t t = time(NULL); \
//     struct tm* ltm = localtime(&t); \
//     if (ltm == NULL) break; \
//     char tmp[32] = {0}; \
//     strftime(tmp, sizeof(tmp), "%H:%M:%S", ltm); \
//     fprintf(stdout, "[%s:%s:%d]" format "\n", tmp, __FILE__, __LINE__, ##__VA_ARGS__); \
// } while (0)
// int main()
// {

//     Buffer b;
//     //测试扩容
//     for(int i = 0;i < 5;i++)
//     {
//         //std::string str = "hello" + std::to_string(i) + "\n";
//         std::string str = "hello\n" + std::to_string(i);

//         b.WriteStringAndPush(str);
//     }
//     while(b.ReadAbleSize())
//     {
//        sleep(1); 
//         std::string str = b.GetLineAndPop();
//        //LOG(2,"%s",str.c_str());
//       DEBUG_LOG("%s",str.c_str());
//       //INFO_LOG("%s",str.c_str());
//        //std::cout<<str<<std::endl;
//     }
//     // std::string tmp;
//     // tmp = b.ReadAsStringAndPop(b.ReadAbleSize());
//     // Buffer b;
//     // //测试
//     // //先写入并移动指针
//     // std::string str = "hhhaa;";
//     // b.WriteStringAndPush(str);
//     // Buffer a;
//     // a.WriteBufferAndPush(b);//把b里的写给a
//     // //再读取并移动指针
//     // std::string tmp;
//     // tmp = a.ReadAsStringAndPop(str.size());
//     // std::cout<<tmp<<std::endl;
//     // std::cout<<b.ReadAbleSize()<<std::endl;
//     // std::cout<<a.ReadAbleSize()<<std::endl;

//     return 0;
// }   
int main()
{
   // Channel c(12);
    return 0;
}